package com.ruoyi.examination.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

import java.util.List;

/**
 * 试题管理对象 question
 * 
 * @author hcc
 * @date 2025-10-21
 */
public class Question extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 试题id */
    private String questionId;

    /** 试题名称 */
    @Excel(name = "试题名称")
    private String questionName;

    /** 1:单选题, 2:多选题, 3:判断题 */
    @Excel(name = "题型")
    private String questionType;

    /** 关联状态 */
    @Excel(name = "关联状态")
    private String relateStatus;

    /** 关联题组ID */
    @Excel(name = "关联题组ID")
    private String relateGroupId;

    /** 关联题组名称 */
    @Excel(name = "关联题组名称")
    private String relateGroupName;

    /** 答案 */
    @Excel(name = "答案")
    private String answer;

    /** 答案解析 */
    @Excel(name = "答案解析")
    private String analysisContent;

    /** 是否删除 */
    private String delFlag;

    /** $column.columnComment */
    private String exampleOne;

    /** $column.columnComment */
    private String exampleTwo;

    /** $column.columnComment */
    private String exampleThree;

    /** $column.columnComment */
    private String exampleFour;

    /** $column.columnComment */
    private String exampleFive;

    /** 选项集合 */
    private List<QuestionOption> questionOptionList;

    /** 题组ID数组 */
    private String[] questionGroupIds;

    public String[] getQuestionGroupIds() {
        return questionGroupIds;
    }

    public void setQuestionGroupIds(String[] questionGroupIds) {
        this.questionGroupIds = questionGroupIds;
    }

    public List<QuestionOption> getQuestionOptionList() {
        return questionOptionList;
    }

    public void setQuestionOptionList(List<QuestionOption> questionOptionList) {
        this.questionOptionList = questionOptionList;
    }

    public void setQuestionId(String questionId) 
    {
        this.questionId = questionId;
    }

    public String getQuestionId() 
    {
        return questionId;
    }

    public void setQuestionName(String questionName) 
    {
        this.questionName = questionName;
    }

    public String getQuestionName() 
    {
        return questionName;
    }

    public void setQuestionType(String questionType) 
    {
        this.questionType = questionType;
    }

    public String getQuestionType() 
    {
        return questionType;
    }

    public void setRelateStatus(String relateStatus) 
    {
        this.relateStatus = relateStatus;
    }

    public String getRelateStatus() 
    {
        return relateStatus;
    }

    public void setRelateGroupId(String relateGroupId) 
    {
        this.relateGroupId = relateGroupId;
    }

    public String getRelateGroupId() 
    {
        return relateGroupId;
    }

    public void setRelateGroupName(String relateGroupName) 
    {
        this.relateGroupName = relateGroupName;
    }

    public String getRelateGroupName() 
    {
        return relateGroupName;
    }

    public void setAnswer(String answer) 
    {
        this.answer = answer;
    }

    public String getAnswer() 
    {
        return answer;
    }

    public void setAnalysisContent(String analysisContent) 
    {
        this.analysisContent = analysisContent;
    }

    public String getAnalysisContent() 
    {
        return analysisContent;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public void setExampleOne(String exampleOne) 
    {
        this.exampleOne = exampleOne;
    }

    public String getExampleOne() 
    {
        return exampleOne;
    }

    public void setExampleTwo(String exampleTwo) 
    {
        this.exampleTwo = exampleTwo;
    }

    public String getExampleTwo() 
    {
        return exampleTwo;
    }

    public void setExampleThree(String exampleThree) 
    {
        this.exampleThree = exampleThree;
    }

    public String getExampleThree() 
    {
        return exampleThree;
    }

    public void setExampleFour(String exampleFour) 
    {
        this.exampleFour = exampleFour;
    }

    public String getExampleFour() 
    {
        return exampleFour;
    }

    public void setExampleFive(String exampleFive) 
    {
        this.exampleFive = exampleFive;
    }

    public String getExampleFive() 
    {
        return exampleFive;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("questionId", getQuestionId())
            .append("questionName", getQuestionName())
            .append("questionType", getQuestionType())
            .append("relateStatus", getRelateStatus())
            .append("relateGroupId", getRelateGroupId())
            .append("relateGroupName", getRelateGroupName())
            .append("answer", getAnswer())
            .append("analysisContent", getAnalysisContent())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("exampleOne", getExampleOne())
            .append("exampleTwo", getExampleTwo())
            .append("exampleThree", getExampleThree())
            .append("exampleFour", getExampleFour())
            .append("exampleFive", getExampleFive())
            .append("questionOptionList", getQuestionOptionList())
            .append("questionGroupIds", getQuestionGroupIds())
            .toString();
    }
}
